home *** CD-ROM | disk | FTP | other *** search
/ Borland JBuilder 6 / jbuilder6.iso / JavaC Booster v1.0 / install.exe / #setuppath# / javacb.jar / b.class (.txt) < prev    next >
Encoding:
Java Class File  |  2001-10-18  |  3.9 KB  |  210 lines

  1. import java.io.BufferedReader;
  2. import java.io.FileReader;
  3. import java.io.OutputStream;
  4. import java.io.PrintStream;
  5. import java.lang.reflect.Constructor;
  6. import java.lang.reflect.Method;
  7. import java.util.Random;
  8.  
  9. // $FF: renamed from: b
  10. class class_0 {
  11.    // $FF: renamed from: for byte[]
  12.    byte[] field_0;
  13.    // $FF: renamed from: a boolean
  14.    boolean field_1;
  15.    // $FF: renamed from: do java.lang.reflect.Constructor
  16.    Constructor field_2;
  17.    // $FF: renamed from: if java.lang.reflect.Method
  18.    Method field_3;
  19.    // $FF: renamed from: int java.lang.reflect.Method
  20.    Method field_4;
  21.    // $FF: synthetic field
  22.    static Class class$java$io$OutputStream;
  23.    // $FF: synthetic field
  24.    static Class class$java$lang$String;
  25.    // $FF: synthetic field
  26.    static Class array$Ljava$lang$String;
  27.  
  28.    // $FF: renamed from: if (byte[]) java.lang.String
  29.    private String method_0(byte[] var1) {
  30.       StringBuffer var2 = new StringBuffer(var1.length * 2);
  31.  
  32.       for(int var3 = 0; var3 < var1.length; ++var3) {
  33.          int var4 = var1[var3] & 255;
  34.          if (var4 < 16) {
  35.             var2.append('0');
  36.          }
  37.  
  38.          var2.append(Integer.toHexString(var4));
  39.       }
  40.  
  41.       return var2.toString();
  42.    }
  43.  
  44.    // $FF: renamed from: a (java.lang.String) byte[]
  45.    private byte[] method_1(String var1) throws Exception {
  46.       int var2 = var1.length() / 2;
  47.       byte[] var3 = new byte[var2];
  48.  
  49.       for(int var4 = 0; var4 < var2; ++var4) {
  50.          var3[var4] = (byte)Integer.parseInt(var1.substring(var4 * 2, (var4 + 1) * 2), 16);
  51.       }
  52.  
  53.       return var3;
  54.    }
  55.  
  56.    // $FF: renamed from: a (byte[]) byte[]
  57.    private byte[] method_2(byte[] var1) {
  58.       c var2 = new c();
  59.       var2.a(var1, 0, var1.length);
  60.       return var2.do();
  61.    }
  62.  
  63.    class_0() throws a {
  64.       Class var1 = this.method_6();
  65.       this.field_2 = this.method_7(var1);
  66.       this.field_3 = this.method_8(var1);
  67.       this.field_4 = this.method_9(var1);
  68.  
  69.       try {
  70.          StringBuffer var2 = new StringBuffer();
  71.          var2.append("jav");
  72.          var2.append("acb.");
  73.          var2.append('k');
  74.          var2.append('e');
  75.          var2.append('y');
  76.          BufferedReader var11 = new BufferedReader(new FileReader(var2.toString()));
  77.  
  78.          try {
  79.             String var4 = var11.readLine();
  80.             this.field_0 = this.method_2(this.method_1(var4));
  81.          } finally {
  82.             var11.close();
  83.          }
  84.       } catch (Throwable var10) {
  85.          this.field_0 = new byte[20];
  86.          Random var3 = new Random();
  87.          var3.nextBytes(this.field_0);
  88.       }
  89.  
  90.    }
  91.  
  92.    // $FF: renamed from: a (java.io.OutputStream, java.lang.String[]) int
  93.    public int method_3(OutputStream var1, String[] var2) throws Exception {
  94.       int var3 = 0;
  95.       if (this.field_1) {
  96.          Object var4 = null;
  97.          Object var5 = this.field_2.newInstance((Object[])var4);
  98.          var4 = new Object[]{var2};
  99.          PrintStream var6 = System.err;
  100.          System.setErr(new PrintStream(var1));
  101.          var3 = (Integer)this.field_3.invoke(var5, (Object[])var4);
  102.          System.setErr(var6);
  103.       } else {
  104.          Object[] var9 = new Object[]{var1, ""};
  105.          Object var11 = this.field_2.newInstance(var9);
  106.          var9 = new Object[]{var2};
  107.          if ((Boolean)this.field_3.invoke(var11, var9)) {
  108.             var3 = 0;
  109.          } else if (this.field_4 != null) {
  110.             var3 = (Integer)this.field_4.invoke(var11, (Object[])null);
  111.          } else {
  112.             var3 = 1;
  113.          }
  114.       }
  115.  
  116.       return var3;
  117.    }
  118.  
  119.    // $FF: renamed from: a () java.lang.Class
  120.    private Class method_4() throws Exception {
  121.       Class var1 = Class.forName("com.sun.tools.javac.Main");
  122.       this.field_1 = true;
  123.       return var1;
  124.    }
  125.  
  126.    // $FF: renamed from: do () java.lang.Class
  127.    private Class method_5() throws Exception {
  128.       Class var1 = Class.forName("sun.tools.javac.Main");
  129.       this.field_1 = false;
  130.       return var1;
  131.    }
  132.  
  133.    // $FF: renamed from: if () java.lang.Class
  134.    private Class method_6() throws a {
  135.       try {
  136.          return this.method_4();
  137.       } catch (Exception var3) {
  138.          try {
  139.             return this.method_5();
  140.          } catch (Exception var2) {
  141.             throw new a("A JavaC's main class is not found.");
  142.          }
  143.       }
  144.    }
  145.  
  146.    // $FF: renamed from: a (java.lang.Class) java.lang.reflect.Constructor
  147.    Constructor method_7(Class var1) throws a {
  148.       try {
  149.          Class[] var2;
  150.          if (this.field_1) {
  151.             var2 = null;
  152.          } else {
  153.             var2 = new Class[]{class$java$io$OutputStream == null ? (class$java$io$OutputStream = class$("java.io.OutputStream")) : class$java$io$OutputStream, class$java$lang$String == null ? (class$java$lang$String = class$("java.lang.String")) : class$java$lang$String};
  154.          }
  155.  
  156.          return var1.getConstructor(var2);
  157.       } catch (Exception var3) {
  158.          throw new a("The JavaC's constructor is invalid.");
  159.       }
  160.    }
  161.  
  162.    // $FF: renamed from: if (java.lang.Class) java.lang.reflect.Method
  163.    Method method_8(Class var1) throws a {
  164.       String var2 = "The JavaC's compile method is invalid.";
  165.  
  166.       Method var3;
  167.       try {
  168.          Class[] var4 = new Class[]{array$Ljava$lang$String == null ? (array$Ljava$lang$String = class$("[Ljava.lang.String;")) : array$Ljava$lang$String};
  169.          var3 = var1.getMethod("compile", var4);
  170.       } catch (Exception var5) {
  171.          throw new a(var2);
  172.       }
  173.  
  174.       if (this.field_1) {
  175.          if (var3.getReturnType() == Integer.TYPE) {
  176.             return var3;
  177.          }
  178.       } else if (var3.getReturnType() == Boolean.TYPE) {
  179.          return var3;
  180.       }
  181.  
  182.       throw new a(var2);
  183.    }
  184.  
  185.    // $FF: renamed from: do (java.lang.Class) java.lang.reflect.Method
  186.    Method method_9(Class var1) throws a {
  187.       if (this.field_1) {
  188.          return null;
  189.       } else {
  190.          Method var2;
  191.          try {
  192.             var2 = var1.getMethod("getExitStatus", (Class[])null);
  193.          } catch (Exception var4) {
  194.             return null;
  195.          }
  196.  
  197.          return var2.getReturnType() == Integer.TYPE ? var2 : null;
  198.       }
  199.    }
  200.  
  201.    // $FF: synthetic method
  202.    static Class class$(String var0) {
  203.       try {
  204.          return Class.forName(var0);
  205.       } catch (ClassNotFoundException var2) {
  206.          throw new NoClassDefFoundError(((Throwable)var2).getMessage());
  207.       }
  208.    }
  209. }
  210.